package org.itboys.seller.mapper;

import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.itboys.seller.meta.Account;
import org.itboys.seller.meta.AccountExample;

public interface AccountMapper {

    Integer getRecentTotalAmount();

    Account selectAccountForUpdate(@Param("userId") long userId);

    int emptyScoreAfterShareOutBonus(@Param("userIds") List<Long> userIds);

    int emptyScoreSAfterShareOutBonus(@Param("userIds") List<Long> userIds);

    int emptyScoreSSAfterShareOutBonus(@Param("userIds") List<Long> userIds);

    int emptyRecentAmount();

    int getRanking(@Param("userId") long userId, @Param("temp") int temp);
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int countByExample(AccountExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int deleteByExample(AccountExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int deleteByPrimaryKey(Long id);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int insert(Account record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int insertSelective(Account record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    List<Account> selectByExample(AccountExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    Account selectByPrimaryKey(Long id);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int updateByExampleSelective(@Param("record") Account record, @Param("example") AccountExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int updateByExample(@Param("record") Account record, @Param("example") AccountExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int updateByPrimaryKeySelective(Account record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table account
     *
     * @mbggenerated Tue Feb 07 19:31:57 CST 2017
     */
    int updateByPrimaryKey(Account record);
}